package cn.com.surker.base.strength.service;

import cn.com.surker.base.strength.entity.BaseStrengthSpecial;
import cn.com.surker.vo.sale.SaleStrengthSpecialPriceVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import cn.com.surker.spring.RestResultDto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
* <p>
    * 强度特性基础表 服务类
    * </p>
*
* @author admin
* @since 2024-08-01
*/
public interface StrengthSpecialBaseService extends IService<BaseStrengthSpecial> {

	/**
	 * 分页查询强度特性
	 * @param searchVal
	 * @param type
	 * @param offset
	 * @param limit
	 * @return
	 */
	IPage findPage(String searchVal, Integer type, Integer offset, Integer limit);

	/**
	 * 新增
	 * @param strengthSpecial
	 * @return
	 */
	RestResultDto saveSpecial(BaseStrengthSpecial strengthSpecial);

	/**
	 * 禁用特性
	 * @param id
	 * @param creator
	 * @return
	 */
	RestResultDto updateStatus(Long id, Integer status, String creator);

    /**
     * 根据类型查询标号特性
     * @param type
     * @return
     */
    List<BaseStrengthSpecial> findSpecial(Integer type);

	/**
	 * 根据销售合同查询特性要求
	 *
	 * @param saleConId
	 * @return
	 */
	List<SaleStrengthSpecialPriceVo> findByConId(String dbCode, Long orgId, Long saleConId);

}
